package com.jt.controller;

import com.jt.pojo.Item;
import com.jt.service.ItemService;
import com.jt.vo.ItemVO;
import com.jt.vo.PageResult;
import com.jt.vo.SysResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * @author: taoyi
 * @date: 2021/6/16 20:12
 * @version: 1.0
 * @explain:
 */
@RestController
@CrossOrigin
@RequestMapping("/item")
public class ItemController {

    @Autowired
    private ItemService itemService;

    /**
     * 请求路径: /item/getItemList?query=&pageNum=1&pageSize=10
     * 请求类型: get
     * 请求参数: 使用pageResult对象接收
     */
    @GetMapping("/getItemList")
    public SysResult getItemList(PageResult pageResult){
        pageResult = itemService.getItemList(pageResult);
        return SysResult.success(pageResult);
    }

    /**
     * url: /item/updateItemStatus
     * 参数: updateItemStatus: { id: ''  title: '', sellPoint: '', price:  '',  num:  ''}
     * 请求发生: put
     * 返回值: SysResult对象
     */
    @PutMapping("/updateItemStatus")
    public SysResult updateItemStatus(@RequestBody Item item){
        itemService.updateItemStatus(item);
        return SysResult.success();
    }

    /**
     * 实现商品新增操作
     * URL地址：/item/saveItem
     * 参数： {item,itemDesc} JSON
     * 返回值： SysResult
     * @param itemVO
     * @return
     */
    @PostMapping("/saveItem")
    public SysResult saveItem(@RequestBody ItemVO itemVO){
        itemService.saveItem(itemVO);
        return SysResult.success();
    }


}
